In computer communications systems such as local area networks, local network controllers, which implement low level communications tasks, are being replaced by intelligent local processors. In general, these processors are used to off-load a greater number of communications tasks from a host system. The use of such communications processors has led to the development of communication processor systems, in which a communications processor accesses its own local memory. This local memory contains software programs for various communications tasks. Typically, these software programs follow certain recognized protocols, which are consistent with the widely accepted model established by the International Standards Organization (ISO).
In some such communications processor systems, the communications processor interfaces with a network controller on one side and with a host processor on the other side. A problem with such systems is the overhead involved in having communications tasks split between the controller and the communications processor.
In other communications processor systems, the communications processor is permanently configured for executing lower level protocol tasks, such as the those that provide physical level services. Additional processing capability is provided by permitting higher level tasks, such as those that provide data link services, to be downloaded to local memory. A potential problem with downloadable communication processor systems is that they are susceptible to downloading of "unfriendly" code. For example, computer viruses and worms can propagate copies of themselves among all nodes of a network. Another example is when task code for a communications task, not designed to share common processor and memory resources with other task code, interferes with execution of that other code. In both situations, the result is unauthorized access to memory of the system, which can disrupt the entire communications system. In peer-to-peer and client-server networks, the susceptibility of a network to undesired code is exacerbated by the open architecture of some node host processors.
Thus, a need exists for a communications processor system that accepts downloaded communications tasks, but that prevents. unfriendly communications task code from disrupting the network.